package com.hskn.hss.module.tlempsalary.service;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hskn.hss.core.annotation.DataScope;
import com.hskn.hss.entity.AjaxResult;
import com.hskn.hss.exception.ExcelReaderDataException;
import com.hskn.hss.exception.HssException;
import com.hskn.hss.module.tlcostoperate.entity.TlCostOperate;
import com.hskn.hss.module.tlcostoperate.to.CostOperateCfgListTO;
import com.hskn.hss.module.tlempsalary.entity.TlEmpSalary;
import com.hskn.hss.module.tlempsalary.to.*;
import com.hskn.hss.to.ForIdsTO;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author hskn
 * @since 2021-05-19
 */
public interface ITlEmpSalaryService extends IService<TlEmpSalary> {

    AjaxResult insert(TlEmpSalaryInsertTO tlEmpSalaryInsertTO) throws HssException;

    AjaxResult update(TlEmpSalaryUpdateTO salaryTO) throws HssException;

    AjaxResult deletebyid(ForIdsTO forIdsTO) throws HssException;

    @DataScope(deptAlias = "empldeptid", userAlias = "creatBy")
    JSONObject getList(TlEmpSalaryListTO salaryTO) throws HssException;

    TlEmpSalary getDetail(TlEmpSalaryDetailTO salaryTO) throws HssException;

    void excelReader(List<TlEmpSalary> empSalaryList) throws ExcelReaderDataException;
    @DataScope(deptAlias = "empldeptid", userAlias = "creatBy")
    List<TlEmpSalary> getTlEmpSalary(EmpSalaryListTO empSalaryListTo, SimpleDateFormat format) throws ParseException;


}
